
/** 今年是否是传入的时间 */
export function isToday(time){
    return now().toDateString() === date(time).toDateString();
}

/** 将秒数转为 00:00:00 */
export function secondFormat(second){
    if (second === undefined || second == null ||second <= 0) return "00:00:00";
    let h = parseInt(second / 60 / 60 % 24);
    let m = parseInt(second / 60 % 60);
    let s = parseInt(second % 60);
    //补零 如果小于10 则在前边进行补零
    return `${(h < 10 ? '0' + h : h)}:${(m < 10 ? '0' + m : m)}:${(s < 10 ? '0' + s : s)}`
}

/** 将时分秒转为秒数 */
export function timeToSecond(time){
    const times = time.split(':');
    return times.length === 1 ? Number(times[0]) : times.length === 2 ? Number(times[0]*3600) + Number(times[1]*60) : Number(times[0]*3600) + Number(times[1]*60) + Number(times[2]);
}


/** 判断目标时间是否在 指定时间之内 */
export function isRange(target,start,end){
    return before(start,target) && after(end,target);
}

/** 判断目标时间是否在 指定时间之前 */
export function before(target,time){
    return time > target;
}


/** 判断目标时间是否在 指定时间之后 */
export function after(target,time){
    return time < target;
}

/** 判断当前时间是否在 指定时间之内 */
export function isRangeNow(start,end){
    return isRange(now(),start,end);
}

/** 判断当前时间是否在 指定时间之前 */
export function beforeNow(target){
    return before(now(),target);
}


/** 判断当前时间是否在 指定时间之后 */
export function afterNow(target){
    return after(now(),target);
}

/**
 * 返回时间范围内的所有天
 */
export function getRangeDay(start,end){
    let date_all = [], i = 0;
    const startTime = date(start);
    const endTime = date(end);
    while((endTime.getTime()-startTime.getTime())>=0){
        const year = startTime.getFullYear();
        const month = startTime.getMonth() < 10 ? "0" + (startTime.getMonth() + 1) : startTime.getMonth() + 1;
        const day = startTime.getDate() < 10 ? "0" + startTime.getDate() : startTime.getDate();
        date_all[i]= `${year}-${month}-${day}`;
        startTime.setDate(startTime.getDate()+1);
        i++;
    }
    return date_all;
}

/** 当前时间 */
export function date(date){
    return new Date(date);
}

/** 当前时间 */
export function now(){
    return new Date();
}
